import request from '@/config/axios'

// 待办事项 VO
export interface OaTodoTaskVO {
  userId: string // 所属用户ID
  title: string // 待办标题
  content: string // 待办内容
  taskType: number // 任务类型
  priority: number // 优先级
  status: number // 状态
  startTime: Date // 开始时间
  endTime: Date // 结束时间
  completeTime: Date // 完成时间
  reminderTime: Date // 提醒时间
  reminderType: number // 提醒方式
  isReminded: boolean // 是否已提醒
  sourceId: string // 来源ID
  remark: string // 备注
}

// 待办事项 API
export const OaTodoTaskApi = {
  // 查询待办事项分页
  getOaTodoTaskPage: async (params: any) => {
    return await request.get({ url: `/bpm/oa-todo-task/page`, params })
  },

  // 查询待办事项详情
  getOaTodoTask: async (id: number) => {
    return await request.get({ url: `/bpm/oa-todo-task/get?id=` + id })
  },

  // 新增待办事项
  createOaTodoTask: async (data: OaTodoTaskVO) => {
    return await request.post({ url: `/bpm/oa-todo-task/create`, data })
  },

  // 修改待办事项
  updateOaTodoTask: async (data: OaTodoTaskVO) => {
    return await request.put({ url: `/bpm/oa-todo-task/update`, data })
  },

  // 删除待办事项
  deleteOaTodoTask: async (id: number) => {
    return await request.delete({ url: `/bpm/oa-todo-task/delete?id=` + id })
  },

  // 导出待办事项 Excel
  exportOaTodoTask: async (params) => {
    return await request.download({ url: `/bpm/oa-todo-task/export-excel`, params })
  },
}
